<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8" />
		<title>2.生命周期案例</title>
		<!-- 引入Vue -->
		<script type="text/javascript" src="../js/vue.js"></script>
		<script type="text/javascript" src="../js/axios.js"></script>
	</head>
	<body>
		<!-- 准备好一个容器-->
		<div id="demo">
			<h1>您打开网页已经{{n}}秒了</h1>
			<h1>随机一句文艺的话：{{msg}}</h1>
			<button @click="goDie">不在需要vm了，毁灭吧！</button>
		</div>

		<script type="text/javascript">
			//阻止 vue 在启动时生成生产提示。
			Vue.config.productionTip = false
			
			new Vue({
				el:'#demo',
				data:{
					n:1,
					msg:''
				},
				methods: {
					goDie(){
						this.$destroy()
					}
				},
				mounted() {
					//一上来就开启一个定时器，更新秒数
					this.timer = setInterval(()=>{
						console.log('定时器的回调执行了')
						this.n += 1
					},1000)
					//一上来就发请求获取一句随机的话
					axios.get('https://api.uixsj.cn/hitokoto/get?type=social').then(
						(value)=>{this.msg = value.data},
						(reason)=>{this.msg = '请求有点问题，一会再试试'}
					)
				},
				beforeDestroy() {
					clearInterval(this.timer)
				},
			})
		</script>
	</body>
</html>